<?php

require_once '../model/dao/Conection.class.php';
require_once '../model/dao/DBCarona.class.php';
/*@author Gabriel Bronzatti Moro*/
Class Carona {
    /* Declaração de variáveis do tipo privado devido ao encapsulamento */

    private $cidadeOrigem;
    private $cidadeDestino;
    private $hora;
    private $data;
    private $valor;
    private $status;
    private $codigoUser;
    
    private $conection;
    private $dbCarona;

    public function registrarCarona($cidadeOrigem,$cidadeDestino,
            $hora,$data,$valor,$status,$nomeUsuario,$login){
        $this->cidadeOrigem= $cidadeOrigem;
        $this->cidadeDestino= $cidadeDestino;
        $this->hora= $hora;
        $this->data= $data;
        $this->valor= $valor;
        $this->status= $status;
        
        
        
        $this->conection = new Conection();
        $this->dbCarona = new DBCarona($this->conection->getMysqli());
        $this->codigoUser= $this->dbCarona->recuperaCodigoUser($nomeUsuario,$login);
        
        $confirmacao = $this->dbCarona->insert("hora,cidadeOrigem,cidadeDestino,usuario_codigo_usuario,status_carona,preco_carona", "'" . $this->hora. 
                "','" . $this->cidadeOrigem . "','" . $this->cidadeDestino . "','" . $this->codigoUser . "','" . $this->status  . "','" .$this->valor. "'");
        $this->conection->encerrarConexao();
        
        if ($confirmacao)
            return true;
        else
            return false;
    }
    
    public function getCaronas($deCidade, $paraCidade){
        $this->conection= new Conection();
        $this->dbCarona= new DBCarona($this->conection->getMysqli());
        $this->codigoUser= $this->dbCarona->recuperaCodigoUser($_SESSION['usuario'],$_SESSION['login']);
        
        $valores= array($this->codigoUser, $deCidade, $paraCidade);
        
        $objects= $this->dbCarona->select("`hora`,`cidadeOrigem`,`cidadeDestino`,"
                . "`usuario_codigo_usuario`,`status_carona`,`preco_carona`", $valores);
        
        
        return $objects;
    }

    /* @return um cidadeOrigem */

    public function getCidadeOrigem() {
        return $this->cidadeOrigem;
    }

    /* seta o valor da variável cidadeOrigem */

    public function setCidadeOrigem($cidadeOrigem) {
        $this->cidadeOrigem = $cidadeOrigem;
    }

    /* @return um cidade destino */

    public function getCidadeDestino() {
        return $this->cidadeDestino;
    }

    /* seta o valor da variável cidade destino */

    public function setCidadeDestino($cidadeDestino) {
        $this->cidadeDestino = $cidadeDestino;
    }

    /* @return um hora */

    public function getHora() {
        return $this->hora;
    }

    /* seta o valor da variável hora */

    public function setHora($hora) {
        $this->hora = $hora;
    }
    /* @return um data */

    public function getData() {
        return $this->data;
    }

    /* seta o valor da variável data */

    public function setData($data) {
        $this->data = $data;
    }
    /* @return um valor */

    public function getValor() {
        return $this->valor;
    }

    /* seta o valor da variável valor */

    public function setValor($valor) {
        $this->valor = $valor;
    }
    /* @return um status */

    public function getStatus() {
        return $this->status;
    }

    /* seta o valor da variável status */

    public function setStatus($status) {
        $this->status = $status;
    }

}